Visual Studio Tools for Applications (VSTA) is a set of tools that independent software vendors (ISVs) can use to build customization abilities into their applications for both automation and extensibility. Those customization abilities can be used by end-users to tailor the ISV's application within a managed extensibility environment just like VBA.[1]
Contents |
Visual Studio Tools for Applications was announced by Microsoft with the release of Visual Studio 2005. The first Community Technology Preview (CTP) of Visual Studio for Application was released in April 2006. Version 1.0 was released to manufacturing along with Office 2007.[2]
It is included with Office 2007 for use by end-users and business application developers, and the SDK is available separately for ISVs.[3] It is however integrated in InfoPath only, and not in other Office applications.
Visual Studio Tools for Applications 2.0 is the current version. The second version of Visual Studio Tools for Applications includes features such as the Dynamic Programming Model and support for WPF, WCF, WF, LINQ, and .NET 3.5.[4]
Visual Studio Tools for Applications (VSTA) is based on the .NET Framework and is built on the same architecture as Visual Studio Tools for Office (VSTO).[5] Visual Studio 2005 Tools for Applications is based on the .NET 2.0 framework and Visual Studio 2005, while Visual Studio Tools for Applications v 2.0 is based on the .NET 3.5 SP1 framework and Visual Studio 2008. Some of the technology developed for Visual Studio for Application (VSA) was incorporated within Visual Studio Tools for Applications.[6]
Visual Studio Tools for Applications consists of both a runtime and design time environment or IDE. The runtime is used by host applications to expose their object models to add-ins as well as discover and load add-ins. Add-ins have access to the host object model through a proxy which utilizes the VSTA runtime, or alternatively add-ins can directly reference the host application. The IDE is a streamlined and customizable version of the Visual Studio IDE- Visual Studio 2005 for VSTA 2005 and Visual Studio 2008 for VSTA 2.0. It supports Visual Basic .Net and C#. The IDE can be customized to add or hide functionality. This makes it ideal for professional developers as well as power users and other end users who may have a more macro recording oriented coding style. Visual Studio Tools for Applications also features 64-bit support and macro recording of the host application, but does not incorporate Active Scripting support. In order to integrate VSTA into a host application the SDK is needed, to distribute VSTA with an application a license and the VSTA distributable is required.
Independent Software Vendors wishing to integrate Visual Studio Tools for Applications into their applications must pay a license fee to Microsoft that is calculated either on a $50 per-seat basis or on the basis of a 1%, 2% or 3% royalty depending on the products' revenue.[7] Independent Software Vendors wishing to integrate Visual Studio Tools for Applications into their applications should contact Microsoft through the vstainfo email address.
Office 2007 applications continue to come with Visual Basic for Applications as the end-user customization environment, except for InfoPath 2007 which enables end-users to customize their InfoPath forms by programming with Visual Studio Tools for Applications.